package cloud.maque.common.captcha.conf;

import cloud.maque.common.captcha.enums.CaptchaEnum;
import com.wf.captcha.base.Captcha;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;

@Data
@Configuration
@ConfigurationProperties(prefix = "maque.captcha")
public class CaptchaProperties {


    /**
     * 是否开启验证码登陆
     */
    Boolean enable = true;

    /**
     * 验证码类型
     */
    CaptchaEnum type = CaptchaEnum.PNG;

    /**
     * PNG的类型
     * 1 TYPE_DEFAULT：数字和字母混合。这是默认的字符类型，验证码中会包含数字和字母的混合。
     * 2 TYPE_ONLY_NUMBER：纯数字。设置后，验证码将只包含数字。
     * 3 TYPE_ONLY_CHAR：纯字母。设置后，验证码将只包含字母。
     * 4 TYPE_ONLY_UPPER：纯大写字母。设置后，验证码将只包含大写字母。
     * 5 TYPE_ONLY_LOWER：纯小写字母。设置后，验证码将只包含小写字母。
     * 6 TYPE_NUM_AND_UPPER：数字和大写字母混合。设置后，验证码将包含数字和大写字母的混合。
     */
    Integer pngType = Captcha.TYPE_NUM_AND_UPPER;

    /**
     * 验证码位数
     */
    Integer length = 4;

    Integer width = 130;

    Integer height = 48;

    /**
     * 字号
     */
    Integer fontSize = 32;

    /**
     * 失效时间，默认30秒
     */
    Integer expire = 30;


}
